home *** CD-ROM | disk | FTP | other *** search
/ NeXT Education Software Sampler 1992 Fall / NeXT Education Software Sampler 1992 Fall.iso / Programming / Source / HippoDraw / HippoDrawSrc1.1 / Hippo.subproj / InspectCut.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-04-25  |  3.5 KB  |  151 lines

  1. /* InspectCut.h        by Mike Gravina        November 1991
  2.  * Controls the cuts on plots
  3.  *
  4.  * Copyright (C)  1991  The Board of Trustees of
  5.  * The Leland Stanford Junior University.  All Rights Reserved.
  6.  */ 
  7.  
  8. #define INSPECTCUT_H_ID "$Id: InspectCut.h,v 1.25 1992/04/18 20:47:40 pfkeb Rel $"
  9.  
  10. #import "InspectBase.h"
  11.  
  12. #import "Plot.h"
  13. #import "hippo.h"
  14.  
  15. @interface InspectCut:InspectBase
  16. {
  17.     id    cutVal1Slider;
  18.         id    cutVal2Slider;
  19.     id    sliders[2];    /* to make matrix of above */
  20.     id     cutValueForm;
  21.        id    radio;
  22.     id    zpSwitch;    /* Zoom/Pan mode switch Button */
  23.     id     tpBrowser;    /* NXBrowser showing tuple data titles */
  24.     id    tpBrowserCells;
  25.     id     cutBrowser;    /* NXBrowser showing cuts added */
  26.         id     cutBrowserCells;
  27.     id    showAllButton;    /* showAllState control button */
  28.     id    addButton;    /* Button that adds cut to plot */
  29.     
  30.     id    docCutList;    /* List of cuts in current Document View */
  31.         id      cutList;    /* List of cut Plots */
  32.         id    cutPlot;    /* current cut Plot */
  33.     id    dependList;     /* List of Plots dependent on curent cut */
  34.     float    varlo;        /* lower limit of cut variable */
  35.     float    varhi;        /* upper limit of cut variable */
  36.     
  37.     ntuple    selectedTuple;
  38.     cutParmType parms;
  39.         int     cutButton;
  40.     BOOL    showAllState;    /* = YES if showing all cuts in browser */
  41.  
  42. }
  43. - initInspFor:aDraw;
  44.  /*
  45.   * creates a new InspectCut for global controler aDraw.
  46.   * After initialization, adds itself to the NewInspector.
  47.   *
  48.   * This method is the designated initializer for the class.
  49.   */
  50.   
  51. - newValueInSlider1:sender;
  52.     /* action when slider 1 is changed */
  53.     
  54. - newValueInSlider2:sender;
  55.     /* action when slider 2 is changed */
  56.     
  57. - newValueInForm:sender;
  58.     /* action when a new value 1 or value2 is typed in as text */
  59.  
  60. - setSliders:(BOOL)flag;
  61.  /*
  62.   * Sets initial range and valudes of sliders and forms if flag is YES,
  63.   * otherwise disables them
  64.   */
  65.     
  66. - reDrawPlot: (SEL) operation inList:aList;
  67.  /*
  68.   * Sends message operation to each Plot object in List aList and
  69.   * redraws them.
  70.   */
  71.   
  72. - newCut:sender;
  73.  /*
  74.   * Creates a new cut Plot and applies it to the currently selected
  75.   * Plots.
  76.   */
  77.  
  78. - add:sender;
  79.  /*
  80.   * Adds existing selected cut to currently selected Plots
  81.   */
  82.   
  83. - remove:sender;
  84.  /*
  85.   * Removes the cut Plot from selected Plot(s) and other plot that
  86.   * are cutting selected Plot(s) if they also depend on the cut Plot
  87.   */
  88.   
  89. - removeCut:plot;
  90.  /*
  91.   * Removes the cut plot from any plot that depends on it.   Method
  92.   * used internally.
  93.   */
  94.   
  95. - replace:sender;
  96.  /*
  97.   * Responds to replace button by replacing the selected Cut with a new
  98.   * one.
  99.   */
  100. - deleteCut:plot;
  101.  /*
  102.   * Delete cut plot from the view's cut plot list and updates
  103.   * panel view.
  104.   */
  105.   
  106. - addCut:plot;
  107.  /*
  108.   * Adds the cut plot to the view's cut plot list and updates
  109.   * panel view.
  110.   */
  111.   
  112. - showButton:sender;
  113.  /*
  114.   * Toggles the cut Browser between showing cuts of selected plot
  115.   * or showing all cuts
  116.   */
  117.    
  118. - setTuple:(ntuple) atuple;
  119.       /* Sets the tuple with already prepared display held by this object
  120.        */
  121.  
  122. - setShowAllState:(BOOL) state;
  123.  /*
  124.   * Sets the state of the cut browser to show all cuts if state is YES,
  125.   * or show cuts on selected plot if not.
  126.   */
  127.   
  128. - updateView;
  129.  /*
  130.   * Updates the Inspector's View when it first comes up,
  131.   * or when there is a change
  132.   */
  133.   
  134. - selectCut:sender;
  135.  /*
  136.   * Responds to selection in the cut Browser.
  137.   */
  138.  
  139. - selectCutVar;
  140.  /*
  141.   * Sets the tuple browser and cut radio buttons to currently
  142.   * selected cut Plot.
  143.   */
  144.   
  145. - (int) browser: sender fillMatrix: matrix inColumn: (int) column;
  146.  /* delegate method of NXBrowser.   Will modify matrix and fill it with
  147.   * tuple data 
  148.   */
  149.  
  150. @end
  151.